djbuch.kapitel_15
Class ToyStoreAdvanced

java.lang.Object
  |
  +--djbuch.kapitel_15.ToyStoreAdvanced

public class ToyStoreAdvanced
extends java.lang.Object

Kleines DemoObjekt, das die verschiedenen Szenarien des Recyclings von Domino Objekten aufzeigt.

Author:
Thomas Ekert

Field Summary
static java.lang.String DEFAULT_FORM
           
static java.lang.String ITEM_CREATIONDATE
           
static java.lang.String ITEM_FORM
           
static java.lang.String ITEM_ID
           
static java.lang.String ITEM_MANUFACTURER
           
static java.lang.String ITEM_NAME
           
static java.lang.String VIEW_TOYBYDATE
           
static java.lang.String VIEW_TOYBYID
           
static java.lang.String VIEW_TOYBYNAME
           
 
Constructor Summary
ToyStoreAdvanced(java.lang.String dbName, Session session)
          Neues ToyStoreObjekt anlegen.
 
Method Summary
 int addToy(java.lang.String name, java.lang.String manufacturer)
          Erzeugt ein neues Document mit dem Toy Da das Document doc nur intern in dieser Methode und nur temporär benötigt wird, kann die Methode selbst das Recycle übernehmen.
 ViewEntryCollection findAllFT(java.lang.String searchQuery)
          Führt eine Volltextsuche im View V_toysByID durch Einschränkend wirkt hier nur die SELECT Formel der Ansicht, d.h. es werden nur Dokumente durchsucht, die im View angezeigt werden.
 DocumentCollection findAllToysByDate(DateTime dt)
          Gibt alle Toys zurück, die am gleichen Datum erstellt wurden, wie der Datumsanteil von dt Der Datumsanteil wird anhand einer Kopie des dt Objekts berechnet, um keine Nebenwirkungen auf dt zu haben.
 DocumentCollection findAllToysByName(java.lang.String name)
           
 DocumentCollection findAllToysByName(java.lang.String name, java.lang.String manufacturer)
          Schlägt in der Ansicht V_toysByName den Namen in der ersten Spalte und optional den Hersteller in der zweiten Spalte nach.
 Document findToyByName(java.lang.String name)
           
 Document findToyByName(java.lang.String name, java.lang.String manufacturer)
          Schlägt in der Ansicht V_toysByName den Namen in der ersten Spalte und optional den Hersteller in der zweiten Spalte nach.
 java.lang.String getToy(int id)
          Lädt den Namen eines Toys mit der ID id Da das Document doc nur intern in dieser Methode und nur temporär benötigt wird, kann die Methode selbst das Recycle übernehmen.
 Document getToyDocument(int id)
          Lädt das zu einem Toy gehörige Domino Document mit der ID id Da das Document doc als Ergebnis zurückgegeben wird, kann die Methode das Recycle nicht (!)
 void recycle()
          Da die Klasse Toy eine Instanzvariable Database db selbst als Objekt bezieht und vorhält, muss eine externe Möglichkeit geboten werden, dieses Domino Java Objekt dem Recycle zuzuführen.
 void removeToy(int id)
          Löscht das Document des Toy mit der ID id.
 DocumentCollection search(java.lang.String query)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ITEM_ID

public static final java.lang.String ITEM_ID
See Also:
Constant Field Values

ITEM_NAME

public static final java.lang.String ITEM_NAME
See Also:
Constant Field Values

ITEM_MANUFACTURER

public static final java.lang.String ITEM_MANUFACTURER
See Also:
Constant Field Values

ITEM_CREATIONDATE

public static final java.lang.String ITEM_CREATIONDATE
See Also:
Constant Field Values

ITEM_FORM

public static final java.lang.String ITEM_FORM
See Also:
Constant Field Values

DEFAULT_FORM

public static final java.lang.String DEFAULT_FORM
See Also:
Constant Field Values

VIEW_TOYBYID

public static final java.lang.String VIEW_TOYBYID
See Also:
Constant Field Values

VIEW_TOYBYNAME

public static final java.lang.String VIEW_TOYBYNAME
See Also:
Constant Field Values

VIEW_TOYBYDATE

public static final java.lang.String VIEW_TOYBYDATE
See Also:
Constant Field Values
Constructor Detail

ToyStoreAdvanced

public ToyStoreAdvanced(java.lang.String dbName,
                        Session session)
                 throws NotesException
Neues ToyStoreObjekt anlegen.

Parameters:
dbName - - Name der Datenbank. Wird als internes Datebank Objekt angelegt und geöffnet
session - - Um mit Domino Objekten zu arbeiten, wird immer eine Session benötigt.
Throws:
NotesException
Method Detail

getToy

public java.lang.String getToy(int id)
                        throws NotesException
Lädt den Namen eines Toys mit der ID id Da das Document doc nur intern in dieser Methode und nur temporär benötigt wird, kann die Methode selbst das Recycle übernehmen.

Parameters:
id - - ID des zu ladenden Toys
Returns:
- Name des Toys oder null, falls nicht gefunden.
Throws:
NotesException

getToyDocument

public Document getToyDocument(int id)
                        throws NotesException
Lädt das zu einem Toy gehörige Domino Document mit der ID id Da das Document doc als Ergebnis zurückgegeben wird, kann die Methode das Recycle nicht (!) selbst übernehmen.

Parameters:
id - - ID des zu ladenden Toys
Returns:
- Document mit dem Toy oder null, falls nicht gefunden.
Throws:
NotesException

addToy

public int addToy(java.lang.String name,
                  java.lang.String manufacturer)
           throws NotesException
Erzeugt ein neues Document mit dem Toy Da das Document doc nur intern in dieser Methode und nur temporär benötigt wird, kann die Methode selbst das Recycle übernehmen.

Parameters:
name - - Name des neuen Toys
Throws:
NotesException

findToyByName

public Document findToyByName(java.lang.String name)
                       throws NotesException
Parameters:
name -
Returns:
Throws:
NotesException
See Also:
(String, String)

findToyByName

public Document findToyByName(java.lang.String name,
                              java.lang.String manufacturer)
                       throws NotesException
Schlägt in der Ansicht V_toysByName den Namen in der ersten Spalte und optional den Hersteller in der zweiten Spalte nach. Der erste Treffer wird zurückgegeben.

Parameters:
name -
manufacturer -
Returns:
Throws:
NotesException

findAllToysByName

public DocumentCollection findAllToysByName(java.lang.String name)
                                     throws NotesException
Parameters:
name -
Returns:
Throws:
NotesException
See Also:
(String, String)

findAllToysByName

public DocumentCollection findAllToysByName(java.lang.String name,
                                            java.lang.String manufacturer)
                                     throws NotesException
Schlägt in der Ansicht V_toysByName den Namen in der ersten Spalte und optional den Hersteller in der zweiten Spalte nach. ALLE Treffer werden zurückgegeben.

Parameters:
name -
manufacturer -
Returns:
Throws:
NotesException

findAllToysByDate

public DocumentCollection findAllToysByDate(DateTime dt)
                                     throws NotesException
Gibt alle Toys zurück, die am gleichen Datum erstellt wurden, wie der Datumsanteil von dt Der Datumsanteil wird anhand einer Kopie des dt Objekts berechnet, um keine Nebenwirkungen auf dt zu haben.

Parameters:
dt -
Returns:
Throws:
NotesException

findAllFT

public ViewEntryCollection findAllFT(java.lang.String searchQuery)
                              throws NotesException
Führt eine Volltextsuche im View V_toysByID durch Einschränkend wirkt hier nur die SELECT Formel der Ansicht, d.h. es werden nur Dokumente durchsucht, die im View angezeigt werden. Dennoch werden alle (!) Daten jedes Dokuments durchsucht, auch wenn sie nicht im View angezeigt werden (im Gegensatz zu findAllToysByName etc.)

Parameters:
searchQuery -
Returns:
Throws:
NotesException

removeToy

public void removeToy(int id)
               throws NotesException
Löscht das Document des Toy mit der ID id. Da das Document doc nur intern in dieser Methode und nur temporär benötigt wird, kann die Methode selbst das Recycle übernehmen.

Parameters:
id -
Throws:
NotesException

recycle

public void recycle()
Da die Klasse Toy eine Instanzvariable Database db selbst als Objekt bezieht und vorhält, muss eine externe Möglichkeit geboten werden, dieses Domino Java Objekt dem Recycle zuzuführen. Gleichzeitig wird über diese Methode die Instanzvariable db auf null gesetzt, um in checkRecycled erkennen zu können, ob ein Recycling erfolgt war.


search

public DocumentCollection search(java.lang.String query)
                          throws NotesException
NotesException